<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2020/9/11
  Time: 15:05
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <meta charset="utf-8">
    <title>Sheraton酒店管理</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/layui/css/layui.css" media="all" />
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/public.css" media="all" />
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/layui_ext/dtree/dtree.css">
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/layui_ext/dtree/font/dtreefont.css">
</head>
<body class="childrenBody">
<!-- 搜索条件开始 -->
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
    <legend>查询条件</legend>
</fieldset>
<form class="layui-form" method="post" id="searchFrm">
    <div class="layui-form-item">
        <div class="layui-inline">
            <label class="layui-form-label">管理员:</label>
            <div class="layui-input-inline" style="padding: 5px">
                <input type="text" name="loginName1" id="loginName1" autocomplete="off" class="layui-input layui-input-inline"
                       placeholder="请输入管理员" style="height: 30px;border-radius: 10px">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">真实姓名:</label>
            <div class="layui-input-inline" style="padding: 5px">
                <input type="text" name="realName1" id="realName1" autocomplete="off" class="layui-input layui-input-inline"
                       placeholder="请输入真实姓名" style="height: 30px;border-radius: 10px">
            </div>
        </div>
    </div>
    <div class="layui-form-item">
        <div class="layui-inline">
            <label class="layui-form-label">电话号:</label>
            <div class="layui-input-inline" style="padding: 5px">
                <input type="text" name="telephone1" id="telephone1" autocomplete="off"
                       class="layui-input layui-input-inline"
                       placeholder="请输入电话号" style="height: 30px;border-radius: 10px">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">性别:</label>
            <div class="layui-input-inline">
                <input type="radio" name="sex1" value="1" title="男">
                <input type="radio" name="sex1" value="0" title="女">
            </div>
        </div>
    </div>

    <div class="layui-form-item">
        <div class="layui-input-black" style="text-align: center">
            <button type="button"
                    class="layui-btn layui-btn-normal layui-icon layui-icon-search layui-btn-radius layui-btn-sm"
                    lay-submit lay-filter="doSearch" style="margin-top: 4px">查询
            </button>
            <button type="reset"
                    class="layui-btn layui-btn-warm layui-icon layui-icon-refresh layui-btn-radius layui-btn-sm"
                    style="margin-top: 4px">重置
            </button>
        </div>
    </div>
</form>
<!-- 搜索条件结束 -->
<table id="administerTable" lay-filter="administerTable"></table>

<script id="toolbarAdminister" type="text/html">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="administerAdd">添加</button>
        <button class="layui-btn layui-btn-sm layui-btn-normal" lay-event="delBatch">批量删除</button>
    </div>
</script>

<script id="barAdminister" type="text/html">
    <a class="layui-btn layui-btn-xs layui-btn-radius" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs layui-btn-radius" lay-event="del">删除</a>
    <a class="layui-btn layui-btn-warm layui-btn-xs layui-btn-radius" lay-event="selUserRole">分配职责</a>
</script>

<%-- 分配角色开始 --%>
<div style="display: none" id="selUserRoleDiv">
    <table id="roleTable" lay-filter="roleTable"></table>
</div>


<!-- 添加和修改的弹出层-->
<div style="display: none;padding: 20px" id="saveOrUpdateDiv">
    <form class="layui-form layui-row layui-col-space10" lay-filter="dataFrm" id="dataFrm">
        <div class="layui-col-md12 layui-col-xs12">
            <div class="layui-row layui-col-space10">
                <div class="layui-col-md9 layui-col-xs7">

                    <div class="layui-form-item magt3">
                        <label class="layui-form-label">管理员昵称:</label>
                        <div class="layui-input-block" style="padding: 5px">
                            <input type="text" name="loginName" id="loginName" autocomplete="off" class="layui-input"
                                   lay-verify=""
                                   placeholder="请输入管理员昵称" style="height: 30px;border-radius: 10px">
                        </div>
                    </div>
                    <div class="layui-form-item magt3">
                        <label class="layui-form-label">管理员密码:</label>
                        <div class="layui-input-block" style="padding: 5px">
                            <input type="password" name="pwd" id="pwd" autocomplete="off" class="layui-input"
                                   lay-verify=""
                                   placeholder="请输入管理员密码" style="height: 30px;border-radius: 10px">
                        </div>
                    </div>
                    <div class="layui-form-item">
                        <label class="layui-form-label">真实姓名:</label>
                        <div class="layui-input-block" style="padding: 5px">
                            <input type="text" name="realName" id="realName" autocomplete="off" class="layui-input"
                                   placeholder="请输入真实姓名" style="height: 30px;border-radius: 10px">
                        </div>
                    </div>
                    <div class="layui-form-item magt3">
                        <label class="layui-form-label">电话号:</label>
                        <div class="layui-input-block" style="padding: 5px">
                            <input type="text" name="telephone" id="telephone" autocomplete="off" class="layui-input"
                                   lay-verify=""
                                   placeholder="请输入电话号" style="height: 30px;border-radius: 10px">
                        </div>
                    </div>
                </div>

            </div>
            <div class="layui-inline">
                <label class="layui-form-label">性别:</label>
                <div class="layui-input-inline">
                    <input type="radio" name="sex" value="1" title="男">
                    <input type="radio" name="sex" value="0" title="女">
                </div>
            </div>
            <input type="hidden" name="id" id="id">
            <div class="layui-form-item magb0">
                <div class="layui-input-block" style="text-align: center;padding-right: 120px">
                    <button
                            class="layui-btn layui-btn-normal layui-btn-md layui-icon layui-icon-release layui-btn-radius"
                            lay-filter="doSubmit" lay-submit="">提交
                    </button>
                    <button type="reset"
                            class="layui-btn layui-btn-warm layui-btn-md layui-icon layui-icon-refresh layui-btn-radius">
                        重置
                    </button>
                </div>
            </div>
        </div>
    </form>
</div>


<%-- 添加或者修改弹出框结束 --%>

<script type="text/javascript" src="${pageContext.request.contextPath}/static/layui/layui.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/static/js/index.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/static/js/cache.js"></script>
<script>
    var tab;
    layui.use(
        ['table', 'layer', 'form', 'jquery'], function () {
            var table = layui.table;
            var form = layui.form;
            var $ = layui.jquery;
            var layer = layui.layer;

            // var dtree = layui.dtree;


            tab = table.render({
                elem: '#administerTable',
                url: "${pageContext.request.contextPath}/admin/administerShow",
                cellMinWidth: 30,
                page: {limit: 5, limits: [5, 10, 15, 20]},
                toolbar: '#toolbarAdminister',//开启头部工具栏，并为其绑定左侧模板
                cols: [[
                    {type: 'checkbox', fixed: 'left'}
                    ,{field: 'id', width: 80, title: '编号', sort: true}
                    ,{field: 'loginName', width: 150, title: '管理员昵称', sort: true}
                    , {field: 'realName', width: 150, title: '真实姓名'}
                    ,{field: 'sex', width: 80, title: '性别', sort: true,templet: function (data) {
                            return data.sex == 1 ? '男' : '女'
                        }}
                    ,{field: 'telephone', width: 160, title: '电话号', sort: true}
                    , {fixed: 'right', title: '操作', toolbar: '#barAdminister'}
                ]]
            })
            var index;
            //头工具栏事件
            table.on('toolbar(administerTable)', function (obj) {
                if (obj.event == 'administerAdd') {
                    administerAdd()
                } else if (obj.event == 'delBatch') {
                    delBatch()
                }
            })

            var url;
            function administerAdd() {
                index = layer.open({
                    type: 1,
                    title: '添加员工',
                    content: $("#saveOrUpdateDiv"),
                    area: ['800px', '440px'],
                    success: function () {
                        // 页面数据要清除
                        $("#dataFrm")[0].reset();
                        url = "${pageContext.request.contextPath}/admin/addAdminister"
                    }
                })
            }
            function delBatch(){
                var data1 = table.checkStatus('administerTable').data
                // var data1=checkStatus.data;
                var ids="";
                var count=0;
                for(var i=0;i<data1.length;i++){
                    ids+=data1[i].id+",";
                    count++;
                }

                if(count == 0){
                    return;
                }
                ids = ids.substring(0,ids.length-1)

                layer.confirm("确定删除这"+count+"条数据吗",function(r){
                    layui.$.get("${pageContext.request.contextPath}/admin/deleteAllAdmin?ids="+ids,function(rr){
                        layer.msg(rr.msg)
                        tab.reload()
                    })
                })
            }

            table.on('tool(administerTable)', function (obj) {
                var data = obj.data
                if (obj.event == "edit") { // 编辑
                    administerUpdate(data)
                } else if (obj.event == "del") { // 删除
                    administerDelete(data.id)
                }else if(obj.event=="selUserRole"){
                    selUserRole(data)
                }
            })
            form.on('submit(doSubmit)', function (data) {
                var param = $("#dataFrm").serialize()
                layer.confirm("确定要提交该数据么", function (r) {
                    $.get(url+"?" + param, function (rr) {
                        layer.msg(rr.msg)
                        layer.close(index)
                        tab.reload()
                    })
                })
                return false;
            })
            form.on('submit(doSearch)', function (data) {
                //ajax数据
                tab.reload({
                    where: data.field
                })
                //不跳转页面
                return false;
            })

            function administerUpdate(data) {
                index = layer.open({
                    type: 1,
                    title: '修改职员信息',
                    content: $("#saveOrUpdateDiv"),
                    area: ['800px', '440px'],
                    success: function () {
                        // 给form表单设置值
                        // 把当前行的数据data显示到form表单中去,form表单中是有id隐藏字段
                        form.val("dataFrm", data)


                        // 下拉框设置值
                        // if (data.userid != 0) {
                        //     //把userid保存到隐藏字段
                        //     $("#userid").val(data.userid)
                        // }
                        // 给pid隐藏字段赋值
                        url = "${pageContext.request.contextPath}/admin/updateAdmin"
                    }
                })
            }

            function administerDelete(aId) {
                layer.confirm("确定要解除该职员所有职务吗？", function () {
                    $.post("${pageContext.request.contextPath}/admin/adminDelete", {"aId": aId}, function (r) {
                        layer.msg(r.msg)
                        tab.reload()
                    })
                })
            }

            var roleTable

            function selUserRole(data) {
            // 弹出框
            index = layer.open({
            type: 1 // 1（页面层）
            , title: "分配" + data.realName + "的职责"
            , content: $("#selUserRoleDiv")
            , area: ['600px', '380px']
            , btn: ['<div class="layui-icon layui-icon-release">确认分配</div>'
            , '<div class="layui-icon layui-icon-close">取消分配</div>']
            , btnAlign: 'c'
            , success: function () {
            // 给roleTable赋值
            roleTable = table.render({
            elem: "#roleTable"
            , url: "${pageContext.request.contextPath}/admin/findRoleByAdmin?id=" + data.id
            // ,page: {limit:5 ,limits:[5,10,15]} //开启分页
            , cellMinWidth: 80
            , cols: [[ //表头
            {type: 'checkbox', fixed: 'left'}
            , {field: 'rId', title: 'ID', fixed: 'center'}
            , {field: 'roleName', title: '职务名称', fixed: 'center'}
            , {field: 'roleDesc', title: '职务描述', fixed: 'center'}
            ]]
            })
            }
            , yes: function (obj) {
            var checkStatus = table.checkStatus("roleTable");
            if (checkStatus.data.length == 0) {
            layer.msg("至少选择一个")
            } else {
            // 获取用户id
            var id = data.id
            var param = "id=" + id
                // var type=data.type
                // param+="type="+type

            // 循环选中的内容nodes
            $.each(checkStatus.data, function (i, item) {
            param += "&ids=" + item.rId
            })
            // A=valueA&B=valueB&B=valueB
            // 把数据保存到数据库
            $.get("${pageContext.request.contextPath}/admin/saveRoleAdmin?"+param, function (r) {
            layer.msg(r.msg)
            })
            }
            layer.close(index)
            }
            })
            }


        })

</script>
</body>
</html>


